package com.ncwu.product.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ncwu.common.annotation.Excel;
import com.ncwu.common.core.domain.BaseEntity;

/**
 * 商品管理对象 tb_product
 * 
 * @author RainFly
 * @date 2025-05-13
 */
public class TbProduct extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    @Excel(name = "主键ID")
    private Long id;

    /** 名称 */
    @Excel(name = "名称")
    private String name;

    /** 类目ID */
    @Excel(name = "类目ID")
    private Long categoryId;

    /** 状态 */
    @Excel(name = "状态")
    private Long status;

    /** 图片 */
    @Excel(name = "图片")
    private String image;

    /** 排序 */
    private Long productSort;

    /** 销售价格 */
    @Excel(name = "销售价格")
    private Long salePrice;

    /** 进货价格 */
    @Excel(name = "进货价格")
    private Long costPrice;

    /** 介绍 */
    private String description;

    /** 库存量 */
    @Excel(name = "库存量")
    private Long stock;

    /** 销量 */
    @Excel(name = "销量")
    private Long sold;

    /** 推广状态 */
    @Excel(name = "推广状态")
    private Integer isAd;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }

    public void setCategoryId(Long categoryId) 
    {
        this.categoryId = categoryId;
    }

    public Long getCategoryId() 
    {
        return categoryId;
    }

    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }

    public void setImage(String image) 
    {
        this.image = image;
    }

    public String getImage() 
    {
        return image;
    }

    public void setProductSort(Long productSort) 
    {
        this.productSort = productSort;
    }

    public Long getProductSort() 
    {
        return productSort;
    }

    public void setSalePrice(Long salePrice) 
    {
        this.salePrice = salePrice;
    }

    public Long getSalePrice() 
    {
        return salePrice;
    }

    public void setCostPrice(Long costPrice) 
    {
        this.costPrice = costPrice;
    }

    public Long getCostPrice() 
    {
        return costPrice;
    }

    public void setDescription(String description) 
    {
        this.description = description;
    }

    public String getDescription() 
    {
        return description;
    }

    public void setStock(Long stock) 
    {
        this.stock = stock;
    }

    public Long getStock() 
    {
        return stock;
    }

    public void setSold(Long sold) 
    {
        this.sold = sold;
    }

    public Long getSold() 
    {
        return sold;
    }

    public void setIsAd(Integer isAd) 
    {
        this.isAd = isAd;
    }

    public Integer getIsAd() 
    {
        return isAd;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("name", getName())
            .append("categoryId", getCategoryId())
            .append("status", getStatus())
            .append("image", getImage())
            .append("productSort", getProductSort())
            .append("salePrice", getSalePrice())
            .append("costPrice", getCostPrice())
            .append("description", getDescription())
            .append("stock", getStock())
            .append("sold", getSold())
            .append("isAd", getIsAd())
            .append("createTime", getCreateTime())
            .append("createBy", getCreateBy())
            .append("updateTime", getUpdateTime())
            .append("updateBy", getUpdateBy())
            .append("remark", getRemark())
            .toString();
    }
}
